home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / chpr2.z / chpr2
Encoding:
Text File  |  2002-10-03  |  14.4 KB  |  265 lines

  1.  
  2.  
  3.  
  4. CCCCHHHHPPPPRRRR2222((((3333SSSS))))                                                            CCCCHHHHPPPPRRRR2222((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      CCCCHHHHPPPPRRRR2222, ZZZZHHHHPPPPRRRR2222 - Performs Hermitian rank 2 update of a packed complex
  10.      Hermitian matrix
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      Single precision complex
  14.  
  15.           Fortran:
  16.                CCCCAAAALLLLLLLL CCCCHHHHPPPPRRRR2222 ((((_u_p_l_o,,,, _n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y,,,, _a_p))))
  17.  
  18.           C/C++:
  19.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  20.                vvvvooooiiiidddd cccchhhhpppprrrr2222 ((((cccchhhhaaaarrrr _u_p_l_o,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_n,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,,
  21.                ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_x,,,, iiiinnnntttt _i_n_c_x,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_y,,,, iiiinnnntttt _i_n_c_y,,,,
  22.                ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a_p))));;;;
  23.  
  24.           C++ STL:
  25.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  26.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  27.                vvvvooooiiiidddd cccchhhhpppprrrr2222 ((((cccchhhhaaaarrrr _u_p_l_o,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_n,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>>
  28.                *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_x,,,, iiiinnnntttt _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_y,,,, iiiinnnntttt
  29.                _i_n_c_y,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_a_p))));;;;
  30.  
  31.      Double precision complex
  32.  
  33.           Fortran:
  34.                CCCCAAAALLLLLLLL ZZZZHHHHPPPPRRRR2222 ((((_u_p_l_o,,,, _n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y,,,, _a_p))))
  35.  
  36.           C/C++:
  37.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  38.                vvvvooooiiiidddd zzzzhhhhpppprrrr2222 ((((cccchhhhaaaarrrr _u_p_l_o,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_n,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,,
  39.                ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_x,,,, iiiinnnntttt _i_n_c_x,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_y,,,, iiiinnnntttt _i_n_c_y,,,,
  40.                ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx _a_p))));;;;
  41.  
  42.           C++ STL:
  43.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  44.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  45.                vvvvooooiiiidddd zzzzhhhhpppprrrr2222 ((((cccchhhhaaaarrrr _u_p_l_o,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_n,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>>
  46.                *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_x,,,, iiiinnnntttt _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_y,,,, iiiinnnntttt
  47.                _i_n_c_y,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> _a_p))));;;;
  48.  
  49. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  50.      These routines are part of the SCSL Scientific Library and can be loaded
  51.      using either the ----llllssssccccssss or the ----llllssssccccssss____mmmmpppp option.  The ----llllssssccccssss____mmmmpppp option
  52.      directs the linker to use the multi-processor version of the library.
  53.  
  54.      When linking to SCSL with ----llllssssccccssss or ----llllssssccccssss____mmmmpppp, the default integer size is
  55.      4 bytes (32 bits). Another version of SCSL is available in which integers
  56.      are 8 bytes (64 bits).  This version allows the user access to larger
  57.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  58.      by using the ----llllssssccccssss____iiii8888 option or the ----llllssssccccssss____iiii8888____mmmmpppp option. A program may use
  59.      only one of the two versions; 4-byte integer and 8-byte integer library
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCHHHHPPPPRRRR2222((((3333SSSS))))                                                            CCCCHHHHPPPPRRRR2222((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      calls cannot be mixed.
  75.  
  76.      The C and C++ prototypes shown above are appropriate for the 4-byte
  77.      integer version of SCSL. When using the 8-byte integer version, the
  78.      variables of type iiiinnnntttt become lllloooonnnngggg lllloooonnnngggg and the <<<<ssssccccssssllll____bbbbllllaaaassss____iiii8888....hhhh>>>> header
  79.      file should be included.
  80.  
  81. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  82.      These routines perform the following Hermitian rank 2 operation:
  83.  
  84.           _A  <- _a_l_p_h_a _x_y_H + (complex conjugate of _a_l_p_h_a)* _y_x_H + _A
  85.  
  86.      where _a_l_p_h_a is a scalar, _x and _y are _n-element vectors, _x_H and _y_H
  87.      conjugate transposes of _x and _y, respectively, and _A is an _n-by-_n packed
  88.      complex Hermitian matrix.
  89.  
  90.      See the NOTES section of this man page for information about the
  91.      interpretation of the data types described in the following arguments.
  92.  
  93.      These routines have the following arguments:
  94.  
  95.      _u_p_l_o      Character.  (input)
  96.                Specifies whether the upper or lower triangular part of matrix
  97.                _A is packed into the array argument _a_p, as follows:
  98.  
  99.                _u_p_l_o= 'U' or 'u': the upper triangular part of _A is being
  100.                supplied in the argument _a_p.
  101.                _u_p_l_o= 'L' or 'l': the lower triangular part of _A is being
  102.                supplied in the argument _a_p.
  103.  
  104.                For C/C++, a pointer to this character is passed.
  105.  
  106.      _n         Integer.  (input)
  107.                Specifies the order of matrix _A.  _n >= 0.
  108.  
  109.      _a_l_p_h_a     Scalar alpha.  (input).
  110.                CCCCHHHHPPPPRRRR2222: Single precision complex.
  111.                ZZZZHHHHPPPPRRRR2222: Double precision complex.
  112.  
  113.                For C/C++, a pointer to this scalar is passed.
  114.  
  115.      _x         Array of dimension 1+(_n-1) * |_i_n_c_x|.  (input)
  116.                CCCCHHHHPPPPRRRR2222: Single precision complex array.
  117.                ZZZZHHHHPPPPRRRR2222: Double precision complex array.
  118.                Contains vector _x.
  119.  
  120.      _i_n_c_x      Integer.  (input)
  121.                Increment for the elements of _x.  _i_n_c_x must not be 0.
  122.  
  123.      _y         Array of dimension 1+(_n-1) * |_i_n_c_y|.  (input)
  124.                CCCCHHHHPPPPRRRR2222: Single precision complex array.
  125.                ZZZZHHHHPPPPRRRR2222: Double precision complex array.
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. CCCCHHHHPPPPRRRR2222((((3333SSSS))))                                                            CCCCHHHHPPPPRRRR2222((((3333SSSS))))
  137.  
  138.  
  139.  
  140.                Contains vector _y.
  141.  
  142.      _i_n_c_y      Integer.  (input)
  143.                Increment for the elements of _y.  Argument _i_n_c_y must not be 0.
  144.  
  145.      _a_p        Array of dimension (_n(_n+1))/2 .  (input and output)
  146.                CCCCHHHHPPPPRRRR2222: Single precision complex array.
  147.                ZZZZHHHHPPPPRRRR2222: Double precision complex array.
  148.  
  149.                Before entry with _u_p_l_o = 'U' or 'u', array _a_p must contain the
  150.                upper triangular part of the Hermitian matrix packed
  151.                sequentially, column-by-column, so that _a_p(1) contains _A(1,1),
  152.                _a_p(2) contains _A(1,2), _a_p(3) contains _A(2,2), and so on.  On
  153.                exit, the upper triangular part of the updated matrix
  154.                overwrites array _a_p.
  155.  
  156.                Before entry with _u_p_l_o = 'L' or 'l', array _a_p must contain the
  157.                lower triangular part of the Hermitian matrix packed
  158.                sequentially, column-by-column, so that _a_p(1) contains _A(1,1),
  159.                _a_p(2) contains _A(2,1), _a_p(3) contains _A(3,1), and so on.  On
  160.                exit, the lower triangular part of the updated matrix
  161.                overwrites array _a_p.
  162.  
  163.                The imaginary parts of the diagonal elements need not be set.
  164.                They are assumed to be 0; on exit, they are set to 0.
  165.  
  166. NNNNOOOOTTTTEEEESSSS
  167.      CCCCHHHHPPPPRRRR2222/ZZZZHHHHPPPPRRRR2222 is a Level 2 Basic Linear Algebra Subprogram (Level 2 BLAS).
  168.  
  169.      When working backward (_i_n_c_x < 0 or _i_n_c_y < 0), this routine starts at the
  170.      end of the vector and moves backward, as follows:
  171.  
  172.           _x(1-_i_n_c_x * (_n-1)), _x(1-_i_n_c_x * (_n-2)) , ..., _x(1)
  173.  
  174.           _y(1-_i_n_c_y * (_n-1)), _y(1-_i_n_c_y * (_n-2)) , ..., _y(1)
  175.  
  176.  
  177.    DDDDaaaattttaaaa TTTTyyyyppppeeeessss
  178.      The following data types are described in this documentation:
  179.  
  180.           TTTTeeeerrrrmmmm UUUUsssseeeedddd                     DDDDaaaattttaaaa ttttyyyyppppeeee
  181.  
  182.      Fortran:
  183.  
  184.           Array dimensioned _n           xxxx((((nnnn))))
  185.  
  186.           Character                     CCCCHHHHAAAARRRRAAAACCCCTTTTEEEERRRR
  187.  
  188.           Integer                       IIIINNNNTTTTEEEEGGGGEEEERRRR (IIIINNNNTTTTEEEEGGGGEEEERRRR****8888 for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. CCCCHHHHPPPPRRRR2222((((3333SSSS))))                                                            CCCCHHHHPPPPRRRR2222((((3333SSSS))))
  203.  
  204.  
  205.  
  206.           Single precision complex      CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  207.  
  208.           Double precision complex      DDDDOOOOUUUUBBBBLLLLEEEE CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  209.  
  210.      C/C++:
  211.  
  212.           Array dimensioned _n           xxxx[[[[_n]]]]
  213.  
  214.           Character                     cccchhhhaaaarrrr
  215.  
  216.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  217.  
  218.           Single precision complex      ssssccccssssllll____ccccoooommmmpppplllleeeexxxx
  219.  
  220.           Double precision complex      ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx
  221.  
  222.      C++ STL:
  223.  
  224.           Array dimensioned _n           xxxx[[[[_n]]]]
  225.  
  226.           Character                     cccchhhhaaaarrrr
  227.  
  228.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  229.  
  230.           Single precision complex      ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>>
  231.  
  232.           Double precision complex      ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>>
  233.  
  234. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  235.      IIIINNNNTTTTRRRROOOO____SSSSCCCCSSSSLLLL(3S), IIIINNNNTTTTRRRROOOO____BBBBLLLLAAAASSSS2222(3S), SSSSSSSSPPPPRRRR(3S)
  236.  
  237.      IIIINNNNTTTTRRRROOOO____CCCCBBBBLLLLAAAASSSS(3S) for information about using the C interface to Fortran 77
  238.      Basic Linear Algebra Subprograms (legacy BLAS) set forth by the Basic
  239.      Linear Algebra Subprograms Technical Forum.
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.                                                                         PPPPaaaaggggeeee 4444
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.